package com.feiyuan.core.service;

import com.feiyuan.core.pojo.entity.SysQuartzJob;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * 任务调度
 */
public interface SysQuartzJobService extends IService<SysQuartzJob> {

    /**
     * 查询定时任务列表
     * @param page
     * @param limit
     */
    IPage<SysQuartzJob> listPage(Integer page, Integer limit);

    /**
     * 保存或者修改任务
     * @param quartzJob
     * @return
     */
    Object saveOrUpdateJob(SysQuartzJob quartzJob);

    /**
     * 删除任务
     * @param id
     * @return
     */
    Object removeJob(Long id);

    /**
     * 暂停任务
     * @param id
     * @return
     */
    Object stopJob(Long id);

    /**
     * 恢复任务
     * @param id
     * @return
     */
    Object resumeJob(Long id);

    /**
     * 立即执行
     * @param id
     * @return
     */
    Object runJob(Long id);
}
